Sequential Constructiveness, SCCharts for Safety-Critical Applications
نویسندگان
چکیده
We present a new visual language, SCCharts, designed for the model-driven engineering of safety-critical reactive systems. SCCharts provide determinate concurrency based on a synchronous model of computation (MoC), without restrictions common to previous synchronous MoCs. SCCharts [vHDM14] use a statechart notation [Har87] and provide determinate concurrency, based on a synchronous model of computation (MoC) [And04]. We lift earlier limitations on sequential accesses to shared variables, by leveraging the sequentially constructive (SC) MoC [vHMA14, AMvHF14]. In essence, the SC MoC extends the classical synchronous MoC by allowing variables to be read and written arbitrarily as long as sequentiality expressed in the program provides sufficient scheduling information to exclude race conditions. Previous approaches have excluded test-then-set code such as “if (! initialized) { init(); initialized = true; }” because it requires a write after a read. The SC MoC permits a compiler to safely admit such statements. The semantics and key features of SCCharts are defined by a very small set of language elements, the Core SCCharts, consisting of state machines plus fork/join concurrency. Conversely, Extended SCCharts contain a rich set of advanced features, such as different abort types, signals, history transitions, etc., as illustrated in Fig. 1; all of these can be reduced via model-to-model transformations into Core SCCharts [MSvH14]. This approach enables a simple yet efficient compilation strategy and aids verification and certification. An open-source, class-room tested SCChart editor/compiler is available in the Eclipse-based modeling framework KIELER. ∗This work was supported by the German Science Foundation (DFG HA 4407/6-1 and ME 1427/6-1) as part of the PRETSY project. http://www.informatik.uni-kiel.de/rtsys/kieler/
منابع مشابه
Compiling SCCharts - A Case-Study on Interactive Model-Based Compilation
SCCharts is a recently proposed statechart language designed for specifying safety-critical reactive systems. We have developed an Eclipse-based compilation chain that synthesizes SCCharts into either hardware or software. The user edits a textual description which is visualized as SCChart and subsequently transformed into VHDL or C code via a series of model-to-model (M2M) transformation steps...
متن کاملInteractive Model-Based Compilation Continued - Incremental Hardware Synthesis for SCCharts
The Single-Pass Language-Driven Incremental Compilation (SLIC) strategy uses a series of model-to-model (M2M) transformations to compile a model or program to a specified target. Tool developer and modeler can inspect the result of each transformation step, using a familiar, graphical syntax of the successively transformed model, which is made possible by harnessing automatic layout. Previous w...
متن کاملUB05 Session 5
We have developped an enhanced version of Noxim (Noxim-XT) to estimate the energy consumption of a NoC in a SOC. Noxim-XT is used in a two-step methodology. First, applications are mapped on a SoC and their traffics are extracted by simulation with MPSOcBench. Second, Noxim-XT tests various hardware configurations of the NoC, and for each configuration, the application's traffic is re-injected ...
متن کاملInteractive Incremental Hardware Synthesis for SCCharts
SCCharts [vHDM+14] is a synchronous visual language used for the modeling of embedded reactive systems. SCCharts are under development within the context of KIELER. KIELER is a research project of the real-time and embedded systems group of Kiel University. The KIELER Compiler (KiCo) provides various model-to-model transformations originating in SCCharts and uses the interactive incremental app...
متن کاملVoting Algorithm Based on Adaptive Neuro Fuzzy Inference System for Fault Tolerant Systems
some applications are critical and must designed Fault Tolerant System. Usually Voting Algorithm is one of the principle elements of a Fault Tolerant System. Two kinds of voting algorithm are used in most applications, they are majority voting algorithm and weighted average algorithm these algorithms have some problems. Majority confronts with the problem of threshold limits and voter of weight...
متن کامل